class TimeUtil {
  /// 将一个以秒为单位的 duration（例如 7113 秒）
  /// 转换为 00:00:00 或者 00:00 这样的格式，
  static String formatVideoDuration(String? seconds) {
    // 检查输入是否为 null 或空字符串
    if (seconds == null || seconds.isEmpty) return '00:00';

    // 尝试将字符串转换为整数
    int totalSeconds;
    try {
      totalSeconds = int.parse(seconds);
    } catch (e) {
      return '00:00'; // 如果转换失败，返回默认值
    }

    // 如果总秒数为 0，返回 '00:00'
    if (totalSeconds <= 0) return '00:00';

    // 计算小时、分钟和秒数
    int hours = totalSeconds ~/ 3600;
    int minutes = (totalSeconds % 3600) ~/ 60;
    int secs = totalSeconds % 60;

    // 构建返回的时间字符串
    if (hours > 0) {
      return '${hours.toString().padLeft(2, '0')}:'
          '${minutes.toString().padLeft(2, '0')}:'
          '${secs.toString().padLeft(2, '0')}';
    } else {
      return '${minutes.toString().padLeft(2, '0')}:'
          '${secs.toString().padLeft(2, '0')}';
    }
  }
}
